﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	///<summary>
	///(Общ)
	///</summary>
	[DataContract]
	public enum ВидыДнейПроизводственногоКалендаря
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
	///<summary>
	///(Общ) Рабочий день
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"69e4df1c-a076-4416-be29-1134d754c86b\", \"Представление\":\"Рабочий\"}")]
		Рабочий = 0,
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"52cf4b59-8091-41cf-80e7-b8bb3d713d7b\", \"Представление\":\"Суббота\"}")]
		Суббота = 1,
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"a85fbda9-b64a-4f99-bf3c-b91cfd4da6b9\", \"Представление\":\"Воскресенье\"}")]
		Воскресенье = 2,
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"78c63f93-574e-44df-86b7-c9a6c1816635\", \"Представление\":\"Предпраздничный\"}")]
		Предпраздничный = 3,
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"59e37e0e-a2ac-488e-b9aa-f136fda865d3\", \"Представление\":\"Праздник\"}")]
		Праздник = 4,
	}
	public static partial class ВидыДнейПроизводственногоКалендаря_Значения//:ПеречислениеСсылка
	{
		///<summary>
		///(Общ) Рабочий день
		///</summary>
		public static readonly Guid Рабочий = new Guid("341129be-54d7-6bc8-4416-a07669e4df1c");
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid Суббота = new Guid("bbb8e780-713d-7b3d-41cf-809152cf4b59");
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid Воскресенье = new Guid("1cb93cbf-4dfd-b9a6-4f99-b64aa85fbda9");
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid Предпраздничный = new Guid("a6c9b786-81c1-3566-44df-574e78c63f93");
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid Праздник = new Guid("36f1aab9-a8fd-d365-488e-a2ac59e37e0e");
		public static ВидыДнейПроизводственногоКалендаря Получить(this ВидыДнейПроизводственногоКалендаря Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static ВидыДнейПроизводственногоКалендаря Получить(this ВидыДнейПроизводственногоКалендаря Значение, Guid Ссылка)
		{
			if(Ссылка == Рабочий)
			{
				return ВидыДнейПроизводственногоКалендаря.Рабочий;
			}
			else if(Ссылка == Суббота)
			{
				return ВидыДнейПроизводственногоКалендаря.Суббота;
			}
			else if(Ссылка == Воскресенье)
			{
				return ВидыДнейПроизводственногоКалендаря.Воскресенье;
			}
			else if(Ссылка == Предпраздничный)
			{
				return ВидыДнейПроизводственногоКалендаря.Предпраздничный;
			}
			else if(Ссылка == Праздник)
			{
				return ВидыДнейПроизводственногоКалендаря.Праздник;
			}
			return ВидыДнейПроизводственногоКалендаря.ПустаяСсылка;
		}
		public static byte[] Ключ(this ВидыДнейПроизводственногоКалендаря Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this ВидыДнейПроизводственногоКалендаря Значение)
		{
			switch (Значение)
			{
				case ВидыДнейПроизводственногоКалендаря.Рабочий: return Рабочий;
				case ВидыДнейПроизводственногоКалендаря.Суббота: return Суббота;
				case ВидыДнейПроизводственногоКалендаря.Воскресенье: return Воскресенье;
				case ВидыДнейПроизводственногоКалендаря.Предпраздничный: return Предпраздничный;
				case ВидыДнейПроизводственногоКалендаря.Праздник: return Праздник;
			}
			return Guid.Empty;
		}
	}
}